import { Statistic as AntdStatistic, StatisticProps } from 'antd';

/**
 * 导出统计组件
 * @param {StatisticProps} props - 统计组件的属性
 * @param {React.ReactNode} props.title - 数值的标题
 * @param {string | number} props.value - 数值内容
 * @param {number} props.precision - 数值精度
 * @param {string} props.prefix - 设置数值的前缀
 * @param {string} props.suffix - 设置数值的后缀
 * @param {(value: any) => React.ReactNode} props.formatter - 自定义数值展示
 * @param {React.CSSProperties} props.valueStyle - 设置数值的样式
 * @returns {JSX.Element} 统计组件的 JSX 元素
 * @description 统计组件是 Ant Design 提供的统计组件，用于展示统计数据，支持数值格式化、前后缀、精度控制等功能。
 * @example
 * <Statistic title="Active Users" value={112893} />
 * @example
 * <Statistic
 *   title="Account Balance (CNY)"
 *   value={112893}
 *   precision={2}
 *   prefix="¥"
 * />
 * @example
 * <Statistic
 *   title="Active"
 *   value={11.28}
 *   precision={2}
 *   suffix="%"
 *   valueStyle={{ color: '#3f8600' }}
 * />
 * @example
 * const { Timer } = Statistic;
 * <Timer title="Countdown" value={Date.now() + 1000 * 60 * 60 * 24 * 2 + 1000 * 30} />
 */
const StatisticComponent = (props: StatisticProps) => {
  return <AntdStatistic {...props} />;
};

// 将 Timer 作为 Statistic 的属性
StatisticComponent.Timer = AntdStatistic.Timer;

export const Statistic = StatisticComponent;

// 单独导出 Timer 以保持向后兼容
export const { Timer } = AntdStatistic;

// 默认导出
export default Statistic;

// 重新导出类型
export type { StatisticProps };
